import sys
# path to the src folder of the repository
sys.path.append('../src')

import trimesh
import time

from organ import Organ
from tissue import TissueBlock
from pipeline import Pipeline

from pathlib import Path
from tqdm.auto import tqdm
Forward Projection
source = Organ(path='../data/3d-vh-m-kidney-l.glb')
target = Organ(path='../data/3d-vh-m-kidney-r.glb')

# instantiate the registration pipeline
pipeline = Pipeline(name='Forward Projections', description='Male Left Kideny to Male Right Kidney', params='../configs/params.yaml')

# register
projections = pipeline.run(source=source, target=target)
projections.registration.show()
# save
projections.export(path='../projections/')
Backward Projection
# load source and target organs
source = Organ(path='../data/3d-vh-m-kidney-r.glb')
target = Organ(path='../data/3d-vh-m-kidney-l.glb')

# instantiate the registration pipeline
pipeline = Pipeline(name='Backward Projections', description='Male Right kidney to Male Left Kidney ', params='../configs/params.yaml')

# register
projections = pipeline.run(source=source, target=target)
projections.registration.show()
# save
projections.export(path='../projections/')
!jupyter nbconvert --to html BidirectionalProjections.ipynb
[NbConvertApp] Converting notebook BidirectionalProjections.ipynb to html
[NbConvertApp] Writing 3018486 bytes to BidirectionalProjections.html